using System.ComponentModel.DataAnnotations;

namespace MediPlatform.Write.Api.Models
{
    /// <summary>
    /// 处理退款申请请求基类
    /// </summary>
    public class ProcessRefundRequest
    {
        /// <summary>
        /// 退款申请ID
        /// </summary>
        [Required]
        public long Id { get; set; }

        /// <summary>
        /// 处理备注
        /// </summary>
        public string? Remark { get; set; }

        /// <summary>
        /// 操作员ID（当前登录用户）
        /// </summary>
        [Required]
        public long OperatorId { get; set; }
    }

    /// <summary>
    /// 确认退款请求
    /// </summary>
    public class ConfirmRefundRequest : ProcessRefundRequest
    {
        // 继承ProcessRefundRequest的所有属性
    }

    /// <summary>
    /// 拒绝退款请求
    /// </summary>
    public class RejectRefundRequest : ProcessRefundRequest
    {
        // 继承ProcessRefundRequest的所有属性
    }
} 